Reducing exception management overhead with software restart markers
نویسنده
چکیده
Modern processors rely on exception handling mechanisms to detect errors and to implement various features such as virtual memory. However, these mechanisms are typically hardwareintensive because of the need to buffer partially-completed instructions to implement precise exceptions and enforce in-order instruction commit, often leading to issues with performance and energy efficiency. The situation is exacerbated in highly parallel machines with large quantities of programmer-visible state, such as VLIW or vector processors. As architects increasingly rely on parallel architectures to achieve higher performance, the problem of exception handling is becoming critical. In this thesis, I present software restart markers as the foundation of an exception handling mechanism for explicitly parallel architectures. With this model, the compiler is responsible for delimiting regions of idempotent code. If an exception occurs, the operating system will resume execution from the beginning of the region. One advantage of this approach is that instruction results can be committed to architectural state in any order within a region, eliminating the need to buffer those values. Enabling out-of-order commit can substantially reduce the exception management overhead found in precise exception implementations, and enable the use of new architectural features that might be prohibitively costly with conventional precise exception implementations. Additionally, software restart markers can be used to reduce context switch overhead in a multiprogrammed environment. This thesis demonstrates the applicability of software restart markers to vector, VLIW, and multithreaded architectures. It also contains an implementation of this exception handling approach that uses the Trimaran compiler infrastructure to target the Scale vectorthread architecture. I show that using software restart markers incurs very little performance overhead for vector-style execution on Scale. Finally, I describe the Scale compiler flow developed as part of this work and discuss how it targets certain features facilitated by the use of software restart markers. Thesis Supervisor: Krste Asanović Title: Associate Professor
منابع مشابه
A Cost-Effective Method for Providing Improved Data Availability During DBMS Restart Recovery After a Failure
We present a cost-effective method for improving data availability during restart recovery of a data base management system (DBMS) after a failure. The method achieves its objective by enabling the processing of new transactions to begin even before restart recovery is completed by exploiting the Comnlt-rs~V concept. It supports finegranularity (e.g., record) locking with semanticallyrich lock ...
متن کاملMethod for Improving Data Security in Register Files Based on Multiple Pipeline Restart
Data security in the register file significantly decreases as a result of technology scaling. Based on pipeline restart, the method of improving the data security and reliability in register files is presented in this paper. As the data and its replica simultaneously exist as a redundant copy of each other in half-custom register files, when an uncorrectable error is detected in the data during...
متن کاملScaling Data Race Detection for Partitioned Global Address Space Programs Chang-
i. Low overhead automated and precise detection of concurrency bugs at scale. ii. Using low overhead bug detection tools to guide speculative program transformations for performance. iii. Techniques to reduce the concurrency required to reproduce a bug using partial program restart/replay. iv. Techniques to provide reproducible execution of floating point programs. v. Techniques for tuning the ...
متن کاملReducing Downtime Due to System Maintenance and Upgrades (Awarded Best Student Paper!)
Patching, upgrading, and maintaining operating system software is a growing management complexity problem that can result in unacceptable system downtime. We introduce AutoPod, a system that enables unscheduled operating system updates while preserving application service availability. AutoPod provides a group of processes and associated users with an isolated machineindependent virtualized env...
متن کاملReducing Downtime Due to System Maintenance and Upgrades
Patching, upgrading, and maintaining operating system software is a growing management complexity problem that can result in unacceptable system downtime. We introduce AutoPod, a system that enables unscheduled operating system updates while preserving application service availability. AutoPod provides a group of processes and associated users with an isolated machineindependent virtualized env...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2008